package com.ruoyi.approval.mapper;

import java.util.List;
import com.ruoyi.approval.domain.ExamineAndApprove;

/**
 * 审批管理Mapper接口
 * 
 * @author ruoyi
 * @date 2023-03-13
 */
public interface ExamineAndApproveMapper 
{
    /**
     * 查询审批管理
     * 
     * @param serialNumber 审批管理主键
     * @return 审批管理
     */
    public ExamineAndApprove selectExamineAndApproveBySerialNumber(Integer serialNumber);

    /**
     * 查询审批管理列表
     * 
     * @param examineAndApprove 审批管理
     * @return 审批管理集合
     */
    public List<ExamineAndApprove> selectExamineAndApproveList(ExamineAndApprove examineAndApprove);

    /**
     * 查询未审批管理列表
     *
     * @return 未审批管理集合
     */
    public List<ExamineAndApprove> selectExamineAndApproveListTwo();

    /**
     * 新增审批管理
     * 
     * @param examineAndApprove 审批管理
     * @return 结果
     */
    public int insertExamineAndApprove(ExamineAndApprove examineAndApprove);

    /**
     * 修改审批管理
     * 
     * @param examineAndApprove 审批管理
     * @return 结果
     */
    public int updateExamineAndApprove(ExamineAndApprove examineAndApprove);

    /**
     * 删除审批管理
     * 
     * @param serialNumber 审批管理主键
     * @return 结果
     */
    public int deleteExamineAndApproveBySerialNumber(Integer serialNumber);

    /**
     * 批量删除审批管理
     * 
     * @param serialNumbers 需要删除的数据主键集合
     * @return 结果
     */
    public int deleteExamineAndApproveBySerialNumbers(Integer[] serialNumbers);

    /**
     * 同意审批管理
     *
     * @param examineAndApprove 审批管理
     * @return 结果
     */
    public int updateOkExamineAndApprove(ExamineAndApprove examineAndApprove);

    /**
     * 拒绝审批管理
     *
     * @param examineAndApprove 审批管理
     * @return 结果
     */
    public int updateNoExamineAndApprove(ExamineAndApprove examineAndApprove);

    /**
     * 回滚操作
     * @param array
     */
    void rollbackEmployee(Object[] array);
}
